Skip to content

[Klaud Cold] Port #3393: dsv41flash-fp4-b200-vllm-agentic-dspark to vLLM nightly-ddd6fbca with FlashInfer sparse indexer + fp8 KV - #3459

Open
functionstackx wants to merge 1 commit into
mainfrom
klaud/dsv41flash-fp4-b200-vllm-agentic-dspark-nightly-0961bbae
Open

functionstackx wants to merge 1 commit into
mainfrom
klaud/dsv41flash-fp4-b200-vllm-agentic-dspark-nightly-0961bbae

Conversation

@functionstackx

@functionstackx functionstackx commented Sep 26, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Port of #3393 (by @xinli-sw) onto the srt-slurm recipe that #3428 moved this config to. #3393 edits the shared legacy benchmarks/single_node/agentic/dsv41flash_fp4_vllm_mtp.sh script plus a B200 launcher opt-in, neither of which the B200 DeepSeek-V4.1-Flash vLLM AgentX config uses any more.

Recipes touched: dsv41flash-fp4-b200-vllm-agentic-dspark

Changes:

Topology, conc lists, CUDA-graph ladders and memory limits are unchanged. #3393's settings passed a full sweep on the legacy path (run 35902738208: all 16 AgentX points, GSM8K strict EM 0.978); this PR re-validates them on the native srt-slurm path. Companion B300 port: #3458.

Test plan

  • full-sweep-enabled sweep passes.

@github-actions

Copy link
Copy Markdown
Contributor

Thanks for the contribution!

  • Review: If this PR changes files owned by someone other than a repository admin or @SemiAnalysisAI/core, ask one eligible CODEOWNER to complete the latest PR_REVIEW_CHECKLIST.md before contacting a core maintainer on Slack. Follow the template exactly, including As a PR reviewer and CODEOWNER, I have reviewed this and have, so sign-off verification triggers.
  • PR verification: Sweeps only run on labeled PRs. Add full-sweep-fail-fast (strongly recommended); use full-sweep-enabled only when matrix jobs should continue after a failure.
  • After merging: PR authors must ensure all GitHub Actions jobs pass. Transient failures often pass on rerun; see how to rerun failed jobs.
中文

感谢你的贡献!

  • **审阅:**如果 PR 修改的文件归属于仓库管理员及 @SemiAnalysisAI/core 之外的 CODEOWNER,请先联系一位有资格的 CODEOWNER 填写最新的 PR_REVIEW_CHECKLIST.md,再通过 Slack 联系核心维护者。必须严格遵循模板,并保留 As a PR reviewer and CODEOWNER, I have reviewed this and have,才能触发签核验证。
  • **PR 验证:**扫描仅在带有标签的 PR 上运行。强烈建议添加 full-sweep-fail-fast;仅当需要矩阵任务在失败后继续运行时才使用 full-sweep-enabled。
  • **合并后:**PR 作者必须确保所有 GitHub Actions 任务通过。临时性失败通常可以通过重新运行恢复;参见重新运行失败任务的说明。

@claude claude Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Beyond the inline finding, I checked whether the new kv-cache-dtype: fp8 and indexer_kv_dtype: mxfp4 settings lower the DSpark draft's effective precision (CONTRIBUTING's draft-model-precision rule) — these are KV-cache/sparse-indexer storage dtypes, not draft-weight overrides, and the unchanged speculative-config block still loads the draft unmodified, consistent with this repo's own precedent for the same kv_cache_dtype=fp8 setting a few lines above in the Kimi-K3 changelog entry.

Extended reasoning...

Config-only PR bumping a vLLM nightly tag, health-check timeouts, and adding a FlashInfer sparse-indexer/fp8-KV attention config plus one perf-changelog entry; no source, launcher, or auth/crypto/permissions code is touched. A CONFIRMED inline finding already flags the unresolved PRLINK_PLACEHOLDER, which is enough on its own to warrant human review, so I deferred rather than approved. I additionally traced the draft-precision question the applicable guidance calls out and found no weight-precision regression, which is worth recording since it's not covered by the inline finding.

Comment thread perf-changelog.yaml Outdated
- dsv41flash-fp4-b200-vllm-agentic-dspark
description:
- "Port #3393 onto the srt-slurm recipe: pin B200 DeepSeek-V4.1-Flash vLLM to the 2026-09-22 nightly 0961bbae (from nightly-cd10ed6f); enable FlashInfer sparse attention (FLASHINFER_MLA_SPARSE_DSV41) with MXFP4 indexer KV and sparse indexer logits at both TP2 and TP4, plus fp8 KV cache; raise the engine readiness timeout to 7200 s (health check 720 x 10 s). Topology, conc lists and memory limits unchanged."
pr-link: PRLINK_PLACEHOLDER

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔴 The new changelog entry's pr-link uses the literal string PRLINK_PLACEHOLDER, which the repo's merge tooling does not recognize as a placeholder, so merge-time canonicalization for this entry will fail. infx/workflows/validate_perf_changelog.py's PR_LINK_PLACEHOLDERS set only accepts "XXX" or "https://github.com/SemiAnalysisAI/InferenceX/pull/XXX" (validate_added_pr_link, line 142-145); "PRLINK_PLACEHOLDER" matches neither and isn't the expected pull/<pr_number> URL either. Fix: replace pr-link with the documented XXX placeholder (or the real PR URL) so utils/merge_with_reuse.sh's prepare_perf_changelog_merge step can canonicalize it at merge time instead of raising ChangelogValidationError.

Why this was flagged

perf-changelog.yaml:8970 sets pr-link: PRLINK_PLACEHOLDER for the new dsv41flash-fp4-b200-vllm-agentic-dspark entry. When this PR is merged via utils/merge_with_reuse.sh, prepare_perf_changelog_merge.py calls compare_entries -> validate_added_pr_link (infx/workflows/validate_perf_changelog.py:134-145), which only tolerates "XXX"/".../pull/XXX" or the exact expected pull/<pr_number> URL for a new entry. "PRLINK_PLACEHOLDER" is neither, so validate_added_pr_link raises ChangelogValidationError("new PR entry must use ... found 'PRLINK_PLACEHOLDER'"), blocking the reuse-merge path/gate that main relies on for append-only changelog integrity, unlike the base branch where no such stray placeholder exists in this file.

Verification: normal. The new tail entry sets pr-link: PRLINK_PLACEHOLDER (git diff perf-changelog.yaml, added lines under config-keys dsv41flash-fp4-b200-vllm-agentic-dspark). The supported merge command utils/merge_with_reuse.sh <pr> runs python -m infx.workflows.prepare_perf_changelog_merge canonicalize --pr-number "$PR" (merge_with_reuse.sh:169-174). That calls canonicalize_bytes →… | normal.…

将 B200 DeepSeek-V4.1-Flash vLLM 固定至 nightly-ddd6fbca,并使用声明式 srt-slurm 配方。
@xinli-sw
xinli-sw force-pushed the klaud/dsv41flash-fp4-b200-vllm-agentic-dspark-nightly-0961bbae branch from b15f933 to d06f540 Compare September 26, 2026 14:21
@github-actions

Copy link
Copy Markdown
Contributor

@xinli-sw xinli-sw changed the title [Klaud Cold] Port #3393: dsv41flash-fp4-b200-vllm-agentic-dspark to vLLM nightly-0961bbae with FlashInfer sparse indexer + fp8 KV [Klaud Cold] Port #3393: dsv41flash-fp4-b200-vllm-agentic-dspark to vLLM nightly-ddd6fbca with FlashInfer sparse indexer + fp8 KV Sep 26, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

2 participants